Data stored on magnetic disks may degrade over time due to various phenomena such as side track erasure (STE), adjacent track interference (ATI), tribological issues such as lube depletion or deposition, magnetic stress defects due to media grain thermal instability, and other magnetic disk reliability phenomena. Some storage devices regularly perform certain processing and media operations, background or foreground, to monitor these and other phenomena that may lead to loss of data. For example, a storage device controller may regularly read back data tracks or track segments to measure degradation of stored data. In general, a small degree of data degradation may be acceptable if the data is still recoverable via an error correction code (ECC) of the storage device. However, if the degradation becomes too severe, the ECC may be unable to repair the data. To prevent unacceptably high loss of data reliability storage device controllers may implement firmware operations for refreshing (e.g., re-writing) data.
In some devices, data refresh operations entail reading and re-writing logical block address ranges that may span contiguous sets of adjacent data tracks. In some of these devices, a group of data tracks is refreshed by moving the data of an LBA range (an extent) to a new storage location and updating a physical-to-logical block mapping scheme to remap the logical block addresses (LBAs) of the data to the new location. In other implementations, a data refresh is performed by moving data from a main store to a temporary non-volatile cache (e.g., a media cache) location and then reading the data out of the non-volatile cache and writing the data back to the main store location.
When a group of data is moved from one physical location to another, as in either of the above-described data refresh techniques, an actuator arm may be moved some number of times back and forth between the locations to complete a single refresh operation. This excessive movement of the actuator arm contributes to high latencies and reduced device performance during these refresh operations.